// 引入动态路由
import { asyncRoutes, constantRoutes } from '@/router'
const state = {
  // 存放用来渲染侧边栏的路由配置,由静态路由和动态路由合并组成
  routes: []
}
const mutations = {
  setRoutes(state, routes) {
    state.routes = [
      ...constantRoutes,
      ...routes
    ]
  }
}
const actions = {
  // 这是筛选路由的方法函数
  filterRoutes(store, menus) {
    // console.log('开始筛选路由')
    const routes = asyncRoutes.filter(item => {
      // return menus.indexOf(item.name) !== -1
      // 返回true,就是不受限制,可以随意访问所有页面,方便调试,临时看到所有页面
      return true
    })
    // console.log(routes)
    // 调用合并路由方法,将获取到的动态路由传入
    store.commit('setRoutes', routes)
    // 将筛选完成后的结果返回给外部使用
    return routes
  }
}

export default {
  namespaced: true,
  state,
  mutations,
  actions
}
